Three-phase electric power is a common method for providing alternating current for power generation, transmission and distribution. For three-phase systems, three circuit conductors transmit three alternating currents of the same frequency and differing phase. For a particular phase, the alternating currents of the other two phases are shifted in time by one-third and two-thirds of a cycle, respectively. The differing in the phases of the three alternating currents enables constant transfer of power to a load.
Three-phase electric power provides efficient transfer of power to three-phase motors. In general, a three-phase motor includes three stators (i.e. stationary portion) and three rotors (i.e. rotating portion). Three-phase electrical power applied to a three-phase motor results in current flow traversing the three stators of the motor. The current flow traversing the three stators results in a magnetic field, which produces magnetic torque on the three rotors. The magnetic torque applied to the three rotors results in rotation of the rotors.
Pulse Width Modulation (PWM) techniques may be used for controlling the operation of three-phase motors. PWM uses a modulated rectangular pulse wave for generating a variation associated with the average value of a waveform. Conventional implementations of PWM for driving three-phase motors operate to increase performance and efficiency associated with the operation of three-phase motors.
Some conventional PWM three-phase motor implementations use rotor location information received from sensors for generating necessary PWM signals for controlling three-phase motors. Other conventional PWM three-phase motor implementations use detection of zero voltage crossing points associated with Back Electro Motive Force (BEMF) via one of the three legs of the three-phase motor, which is not powered.
For conventional PWM implementations associated with three-phase motors, detection of BEMF may be performed by configuring one of the three phases as high impedance, while sourcing a second phase to ground and modulating a third phase.
A common problem of this methodology is errors and noise produced on the leg configured for high impedance as a result of rising and falling edges induced on the modulated third leg.
Additionally, the induced noise and errors may result in a reduction in the system-level performance. Conventional methods for reducing the effects of the noise and errors include ignoring the leg sourced as high impedance during periods of larger error, filtering the high impedance leg and damping the high impedance leg for removal of errors.
FIGS. 1A-F are cross-sectional illustrations for an example conventional motor 100.
Motor 100 includes a rotor 102 and a stator 104. Motor 100 operates as a three-phase motor for converting electrical power to mechanical power. For this example, rotor 102 is located exterior to stator 104. Rotor 102 rotates about stator 104, with stator 104 being stationary. Rotor 102 includes a magnet 106, a magnet 108 and a magnet 110. Magnets 106, 108 and 110 provide magnetic fields. Stator 104 includes a first leg 112, a second leg 114 and a third leg 116. Legs 112, 114 and 116 provide magnetic fields. The interoperation of magnets 106, 108 and 110 with legs 112, 114 and 116 cause rotor 102 to rotate about stator 104.
For discussion with respect to FIGS. 1A-F, consider rotor 102 rotating in a clockwise direction.
In FIG. 1A, magnet 106 is located with respect to first leg 112 by an angle 120 also denoted as θ. At this time of the revolution of rotor 102, magnet 106 has not yet reached first leg 112.
In FIG. 1B, rotor 102 has rotated such that magnet 106 has passed first leg 112 by angle 120.
In FIG. 1C, magnet 106 is lagging with respect to second leg 114 by angle 120. At this time of the revolution of rotor 102, magnet 106 has not passed second leg 114.
In FIG. 1D, magnet 106 has passed second leg 114 by angle 120.
In FIG. 1E, rotor 102 has rotated such that magnet 106 is lagging with respect to third leg 116 by angle 120. At this time of the revolution of rotor 102, magnet 106 has not passed third leg 116.
In FIG. 1F, magnet 106 has passed third leg 116 by angle 120.
To efficiently drive motor 100, the relative position of rotor 102 with respect to stator 104 should be known. This may be accomplished by monitoring the relative location of a single point on rotor 102 with respect to stator 104. For purposes of discussion, consider a point 118 on rotor 102. Knowing the location of point 118, with respect to stator 104, enables the determination of the location of all other points on rotor 102 with respect to stator 104. Furthermore, determining the location of point 118 with respect to stator 104 may aid in controlling the operation of motor 100. In particular, motor 100 may be driven differently for the configuration of FIG. 1A than for the configuration in any one of FIGS. 1B-F.
FIGS. 2A-F are cross-sectional illustrations for example conventional motor 100 at different times of operation.
For purposes of discussion, consider the configuration of motor 100 of FIG. 2A, wherein rotor 102 is rotating with an angular velocity, as noted by arrow 204, around stator 104. At some time, the polarity of the magnetic field provided by stator 104 should be opposite to that of the magnetic field provided by rotor 102 so as to “pull” rotor 102 toward stator 104. In this example, magnet 106 is arranged so as to provide a negative magnetic field radially inward toward stator 104. At this time, first leg 112 is driven so as to provide a positive magnetic field radially outward toward rotor 102. An attraction, as noted by an arrow 202, results from the opposite magnetic fields presented by magnet 106 and first leg 112. The attraction indicated by arrow 202 induces rotation of rotor 102 at the angular velocity, as noted by arrow 204.
Rotor 102 will continue to rotate in a clockwise direction, as shown in FIG. 2B. Similar to FIG. 2A, in FIG. 2B magnet 106 is still arranged so as to provide a negative magnetic field radially inward toward stator 104. At this time, first leg 112 is still driven so as to provide a positive magnetic field radially outward toward rotor 102. An attraction, from the opposite magnetic fields presented by magnet 106 and first leg 112, is maintained. The maintained attraction maintains rotation of rotor 102 at an angular velocity, as noted by an arrow 206.
At some time, the polarity of the magnetic field provided by stator 104 should be reversed to “push” rotor 102 away from stator 104. As shown in FIG. 2C, the polarity of the magnetic field provided by first leg 112 has switched from a positive magnetic field as described with reference to FIG. 2A-B to a negative magnetic field. In other words in FIG. 2C, magnet 106 is still arranged so as to provide a negative magnetic field radially inward toward stator 104. However, first leg 112 is driven so as to provide a negative magnetic field radially outward toward rotor 102. The similar magnetic fields provided by first leg 112 and magnet 106 create a repulsion, as noted by an arrow 208. Repulsion 208 maintains rotation of rotor 102 at an angular velocity, as noted by an arrow 210.
Rotor 102 will continue to rotate in a clockwise direction, as shown in FIG. 2D. Similar to FIG. 2C, in FIG. 2D magnet 106 is still arranged so as to provide a negative magnetic field radially inward toward stator 104. At this time, first leg 112 is still driven so as to provide a negative magnetic field radially outward toward rotor 102. A repulsion, from the similar magnetic fields presented by magnet 106 and first leg 112, is maintained. The maintained repulsion maintains rotation of rotor 102 at an angular velocity, as noted by an arrow 212.
For proper operation of motor 100, switching the polarity of the magnetic field provided by first leg 112, for example as described above with respect to FIG. 2C, must be performed at an appropriate time, i.e., at the correct relative position of rotor 102 with respect to stator 104. Accordingly, appropriate switching of magnetic field for first leg 112 requires an accurate determination of the location and velocity for rotor 102 with respect to stator 104.
FIG. 2E illustrates an example of improper timing of the switching of the polarity of the magnetic field provided by first leg 112. In FIG. 2E, rotor is rotating in a clockwise direction at an angular velocity, as noted by an arrow 216. First leg 112 is driven to provide a radially outward negative magnetic field. Because first leg 112 is driven in this manner at this time, the radially outward negative magnetic field provided by first leg 112 repels against the radially inward negative magnetic field provided by magnet 106. The repelling similar magnetic fields results in a repulsion, illustrated by arrow 214, between first leg 112 and magnet 106. In this example, the relative location of rotor 102 with respect to stator 104 may have been incorrectly ascertained resulting in the configuration of the magnetic field for first leg 112 being switched at an incorrect point in time, resulting in an unpredictable operation of motor 100.
As shown in FIG. 2F the repulsion, illustrated by arrow 214, between first leg 112 and magnet 106 may result in the undesired termination of rotation for rotor 102.
FIGS. 2A-F illustrate the importance of accurately determining the position and velocity of rotor 102 (relative to stator 104) associated with the operation for a three-phase motor. As the accuracy of the relative position and velocity increases, the more efficiently the three-phase motor may be operated.
FIG. 3 illustrates an example cross-section timing selection diagram for determining the position of rotor 102 with respect to stator 104.
For example, a position 302 is the position of point 118 on rotor 102 at time t1 as shown in FIG. 1A, a position 304 is the position of point 118 on rotor 102 at time t2 as shown in FIG. 1B, a position 306 is the position of point 118 on rotor 102 at time t3 as shown in FIG. 1C, a position 308 is the position of point 118 on rotor 102 at time t4 as shown in FIG. 1D, a position 310 is the position of point 118 on rotor 102 at time t5 as shown in FIG. 1E and a position 312 is the position of point 118 on rotor 102 at time t6 as shown in FIG. 1F.
Control of motor 100 may require determining the location of rotor 102 with respect to stator 104, for example by determining the location of point 118, at various points in time in order to efficiently and properly drive motor 100. An incorrect determination for the location of point 118 may result in inefficient and improper operation of motor 100. For example, if driven improperly, the magnetic fields associated with rotor 102 and stator 104 may repel one another as discussed above with reference to FIG. 2E or rotor 102 may cease rotating as discussed above with reference to FIG. 2F.
There are many known systems and methods for determining the position and velocity of a rotor, with reference to a stator, in a three phase motor. One known system and method includes driving a single leg of the three phase motor, grounding one leg of the three phase motor, and measuring a voltage on the third leg. This will be described in greater detail with reference to FIGS. 4-7.
FIG. 4 illustrates an example motor controller 400 that may be used to drive a three phase motor.
Motor controller 400 includes a sensor 402, an average portion 404, a switch 406, a controller 408, an output portion 410, a driver 411, a driver 412 and a driver 413. Motor controller 400 additionally includes signal lines 420, 422 and 424 to connect to first leg 112, second leg 114 and third leg 116, respectively. Motor controller 400 additionally includes a ground line 414, a driver line 415, a driver line 416, a driver line 417 and a floating line 418.
Motor controller 400 controls the operation of motor 100 as described with reference to FIGS. 1A-F, FIGS. 2A-F and FIG. 3.
Motor controller 400 may operate in a driving mode or in a sensing mode. In the driving mode, motor controller 400 may provide driving signals to first leg 112, second leg 114 and/or third leg 116. In this example, driver 411, driver 412 and driver 413 are able to provide separate driving signals for each of first leg 112, second leg 114 and/or third leg 116 if needed. In the sensing mode, motor controller will: drive only one of first leg 112, second leg 114 and third leg 116; will float another of first leg 112, second leg 114 and third leg 116; and will ground the final of first leg 112, second leg 114 and third leg 116.
Sensor 402 is able to detect a parameter of each of first leg 112, second leg 114 and/or third leg 116, via signals 432, 434 and 436, respectively. Average portion 404 averages the values of a parameter of two of three of first leg 112, second leg 114 and/or third leg 116, via signals 426, 428 and 430, respectively. Switch 406 controllably connects signal lines 420, 422 and 424 to ground line 414, driver line 415, driver line 416, driver line 417 or floating line 418. Controller 408 processes received signals for controlling sensor 402, average portion 404, switch 406 and output portion 410. Output portion 410 receives information associated with received and processed signals.
Sensor 402 is arranged to receive an input electrical signal as a signal 432, from first leg 112 via signal line 420. Sensor 402 is arranged to receive an input electrical signal as a signal 434, from second leg 114 via signal line 422. Sensor 402 is arranged to receive an input electrical signal as a signal 436, from third leg 116 via signal line 424. Furthermore, sensor 402 is arranged to receive a signal 440 from controller 408. Based upon the information received via signal 440, sensor 402 may be instructed to detect any of signal 432, signal 434 or signal 436. Non-limiting examples of parameters detected by sensor 402 include voltage, current, energy or power.
Average portion 404 is arranged to receive an input electrical signal as a signal 426, from first leg 112 via signal line 420. Average portion 404 is arranged to receive an input electrical signal as a signal 428, from second leg 114 via signal line 422. Average portion 404 is arranged to receive an input electrical signal as a signal 430, from third leg 116 via signal line 424.
Average portion 404 finds the average of any two of received signal 426, signal 428 and signal 430. Selection of which signals to be used for the average is received via a signal 442 provided by controller 408. Non-limiting examples of received signals include voltage, current, energy or power.
Switch 406 is operable to connect each of signal lines 420, 422 and 424 to ground line 414, driver line 415, driver line 416 driver line 417 and floating line 418. For example, in one situation, switch 406 may connect ground line 414 to signal line 420, may connect driver line 416 to signal line 422 and may connect floating line 418 to signal line 424. Switch 406 determines configuration for providing selected input signal to output signals via a signal 438 received from controller 408.
Controller 408 receives sensor information from sensor 402 via a signal 448. Controller 408 receives average information from average portion 404 via a signal 446. Controller 408 performs processing of received sensor information and average information for providing control of sensor 402, average portion 404, switch 406 and output portion 410. Non-limiting example embodiments of controller 408 include discrete semiconductors, integrated semiconductors, microprocessors and programmable logic devices.
Output portion 410 receives average information from average portion 404 via a signal 444. Output portion 410 receives control information from controller 408 via a signal 450. Output portion 410 then provides output data for a user. Output portion 410 may be any know output device, non-limiting examples of which include a monitor or a printer.
As mentioned above, motor controller 400 may operate in a driving mode or in a sensing mode. In the driving mode, motor controller 400 provides driving signals to motor 100 to rotate rotor 102 around stator 104. For example, controller 408 may instruct switch 406 to connect: driver 411 to signal line 420, thereby driving leg 112; driver 412 to signal line 422, thereby driving second leg 114; and/or driver 413 to signal line 424, thereby driving third leg 116. In some embodiments, only one of first leg 112, second leg 114 or third leg 116 is driven by one of driver 411, driver 412 or driver 413. In any event, drivers 411, 412 and 413 may provide driving signals to alternate the polarity of the magnetic fields of legs 112, 114 and 116 as needed to attract or repel magnets 106, 108 and 110, as discussed above with reference to FIGS. 1A-F.
However, as discussed above with reference to FIGS. 2A-F, motor controller 400 must be able to switch the polarity of the magnetic fields of legs 112, 114 and 116 at the correct time, or more precisely, at the correct relative position of rotor 102 (as compared to stator 104). To accomplish this, motor controller 400 operates in the sensing mode. One conventional method of determining a position of the legs of a three-phase motor is to set one leg to ground, float another leg and drive the third leg. The driven third leg will induce a voltage in the floating leg. The induced voltage in the floating leg will increase in a generally linear fashion. A predetermined voltage threshold is set, which corresponds to a position of the three-phase motor. When the induced voltage in the floating leg crosses predetermined threshold, then the three-phase motor should be in the position associated with the voltage threshold. This will be described in greater detail with reference to FIG. 5.
FIG. 5 presents an illustration for an example conventional motor system 500, when operating in a conventional sensing mode.
Motor system 500 includes motor 100 and motor controller 400.
In this example, switch 406 is configured via signal 438 received from controller 408 such that signal line 420 is connected to ground line 414, signal line 422 is connected to driver 412 and signal line 424 is connected to floating line 418. In this example mode, driver 411 and driver 413 are not utilized. In other example modes, any of drivers 411, 412 or 413 may be used. In this example mode, first leg 112 is set to ground potential, second leg 114 is driven by driver 412 and signal line 422 and third leg 116 floats. For other examples, depending upon the location of rotor 102 with respect to stator 104, a different configuration for switch 406 may be provided by controller 408.
First leg 112 includes a magnetic portion 502 and a coil 504. Second leg 114 includes a magnetic portion 506 and a coil 508. Third leg 116 includes a magnetic portion 510 and a coil 512.
When coil 504 receives a driving signal, first leg 112 converts electrical power received by coil 504 into a magnetic field for interaction with magnetic portion 502, which produces torque, which results in mechanical power. Similarly, when coil 508 receives a driving signal, second leg 114 converts electrical power received by coil 508 into a magnetic field for interaction with magnetic portion 506, which produces torque, which results in mechanical power. Finally, when coil 512 receives a driving signal, third leg 116 converts electrical power received by coil 512 into a magnetic field for interaction with magnetic portion 510, which produces torque, which results in mechanical power.
For purposes of explanation, in this example, presume that second leg 114 is arranged to be driven by a PWM signal. The arrangement of legs associated with ground potential, PWM signal or floating may be configured differently as needed depending upon the configuration and operation of motor 100. For example, for a period of time, first leg 112 may be arranged as floating, second leg 114 may be arranged to receive ground potential and third leg 116 may be arranged to receive a PWM signal. For purposes of discussion, a single situation will be described.
First leg 112 is arranged to receive ground potential via signal line 420, which is detected by average portion 404. Second leg 114 is arranged to receive a signal from driver 412 via signal line 422, which is detected by average portion 404. Third leg 116 floats via signal line 424, which is detected by sensor 402.
First leg 112, second leg 114 and third leg 116 are jointly connected for generating a return signal 514.
Sensor 402 provides signal 448 to controller 408 as a measurement of motor 100. Sensor 402 converts the signal received via signal 436 to information signaling an event or condition of some type for presentation to signal 448. For example, sensor 402 may measure the voltage potential associated with signal 436. By monitoring the voltage potential of signal 436, controller 408 looks for a transition through a voltage potential of zero Volts. Furthermore, sensor 402 may convert recognition of a transition for signal 436 thorough a voltage potential of zero Volts to a pulse or toggle signal associated with signal 448. For example, a digitally sampled signal with discrete voltage values of {−3, −2, −1, 0, 1, 2, 3} might present a digital signal {0, 0, 0, 1, 0, 0, 0} to signal 448, with the fourth output sequence value indicating the fourth input sequence crossing a voltage potential of zero Volts. Signal 446 is a characterization of an average calculation performed for signals as generated by average portion 404 and presented to controller 408. For this example, average portion 404 performs an average calculation for received signal 426 and received signal 428. For example, for a digitally sampled signal 426 with discrete voltage values of {1, 2, 3} over three discrete samples and for a digitally sampled signal 428 with discrete voltage values of {4, 5, 6} over the same discrete samples, the average value would be calculated as {(1+4)/2, (2+5)/2, (3+6)/2} or {2.5, 3.5, 4.5}.
At certain periods of time, one of the three legs is set to ground. In this example situation, first leg 112 is set to ground line 414. Furthermore, a second of the three legs is driven by a PWM signal. In this example situation, second leg 114 is driven by a PWM signal provided by driver 412. Furthermore, the third leg of the three legs is floated. In this example situation, third leg 116 is floated by being connected to floating line 418. A BEMF is induced in the floating leg in this detection method. The BEMF is used to determine a relative position of rotor 102 as compared to stator 104, as will now be described in greater detail.
When applying a voltage to create an electro-motive force, a motor's armature may begin to rotate and as a result a certain amount of electrical resistance is generated by the rotating magnetic field. Furthermore, this amount of electrical resistance may be denoted as BEMF. For a motor using a rotating armature in the presence of a magnetic flux, the coil conductors of the motor transition through the magnetic field lines as the motor rotates. The changing field strength produces voltages in the coils, which may be considered as the motor operating in a similar manner as a generator, or also may be considered as the voltage produced from the BEMF opposing the originally applied voltage.
In many cases, the signal produced on the floating or high impedance leg (e.g. third leg 116 in this example) may be considered as being corrupted as a result of the signal noise produced from the pulse width modulated signal injected on the other leg (e.g. second leg 114 in this example). Furthermore, the noise or error may need to be removed from the floating leg (e.g. third leg 116) in order to accurately measure the BEMF.
Additionally, for conventional motor system 500 of FIG. 5, the system level performance may need to be reduced or degraded in order to tolerate the increased noise or error injected into the floating leg and measured via the motor position signal (e.g. signal 436).
Conventional methods for reducing the effects of noise or error include ignoring the signal produced by the floating leg during periods of large error, filtering the signal produced by the floating leg to remove some portions of the noise and damping the leg for earlier removal of the induced noise or errors. Furthermore, these conventional methods for reducing the effects of noise or error may present negative issues associated with the operation of motor system 500.
It should be noted that illustrations and descriptions with reference to FIG. 5 are considered for a portion of a cyclical period associated with the operation of motor system 500. For example, for a different portion of the cyclical period associated with motor system 500, second leg 114 may be driven by ground portion potential (or similar), third leg 116 may be driven by driver 412 (or similar) and first leg 112 may be configured for high impedance.
To reiterate, motor controller 400 may operate in a driving mode or a sensing mode. In the driving mode, motor controller 400 drives motor 100 such that rotor 102 rotates around stator 104. In the sensing mode, motor controller 400 drives one leg of motor 100, sets one leg of motor 100 to ground and floats the remaining leg of motor 100 to monitor a BEMF in the floating leg. The driving mode will be described with reference to FIG. 6, whereas the sensing mode will be described with reference to FIG. 7.
FIG. 6 presents an illustration of an example graph of waveforms for motor controller 400 described above with reference to FIG. 4, when operating in the driving mode.
As illustrated in FIG. 6, a graph 600 includes a y-axis 602, in Volts, and an x-axis 604, in milliseconds. Graph 600 includes a waveform 606, a waveform 608 and a waveform 610.
In this example, two legs of motor 100 are being driven whereas one leg is connected to ground. For example, waveform 606 represents a signal on signal line 420, when driver 411 (FIG. 4) is driving leg 112. Waveform 606 includes a pulse 612, a pulse 614 and a pulse 616. Waveform 608 represents signal line 422 being driven to ground potential. Waveform 610 represents signal line 424, when driver 413 (FIG. 4) is driving third leg 116. Waveform 610 includes a pulse 618, a pulse 620 and a pulse 622.
For brevity of discussion, illustrations and descriptions with reference to FIG. 6 are considered for a portion of a cyclical period associated with the operation of motor system 500 in the driving mode. For example, for a different portion of the cyclical period associated with motor system 500, waveform 606 may be configured for ground potential, waveform 608 may be configured for a wider pulse width modulated scheme and waveform 610 may be configured for a narrower pulse width modulated scheme.
Configuring varying pulse widths for signals as illustrated with reference to waveform 606 and waveform 610 may sufficiently provide for conversion of supplied electrical power to mechanical power for motor 100. Furthermore, the varying pulse widths may provide sinusoidal electrical currents for motor 100.
There will come a time when the polarity of the radially outward magnetic field generated by a leg of motor 100 must be reversed, for example a time between the state illustrated in FIG. 2B and the state illustrated in FIG. 2C. A designer of motor 100 will have a general estimate of this time, based on the geometry and materials of motor 100. However, to more accurately determine this time, motor controller 400 should be operated in the sensing mode. Accordingly, when rotor 102 approaches a predetermined estimated position, motor controller 400 operates in the sensing mode, to more accurately determine the actual position of rotor 102 with reference to stator 104, so that drivers 411, 412 and 413 may switch the polarities for legs 112, 114 and 116 at the appropriate time.
When motor controller 400 operates in the sensing mode, for example as illustrated in FIG. 5, sensor 402, average portion 404, controller 408 and output portion 410 are able to determine a more accurate position of rotor 102 with reference to stator 104.
In this example, controller 408 instructs sensor 402, via signal 440, to detect the voltage on each of legs 112, 114 and 116 via signals 432, 434 and 436, respectively. In the case where motor controller 400 is in the state of FIG. 5, the voltage on leg 112 will be set to ground, as leg 112 is connected to ground line 414. The voltage on second leg 114 will correspond to the driving signal provided by driver 412, as second leg 114 is connected to driver 412. The voltage, on third leg 116 will be the BEMF, as third leg 116 is connected to floating line 418. The processing of the received voltage by sensor 402 associated with third leg 116 is passed to controller 408 as signal 448. For example, sensor 402 may process a received signal crossing zero Volts via a floating leg (e.g. third leg 116) to a pulse signal for delivery to controller 408 via signal 448.
Average portion 404 will take the average of the voltages of the grounded leg and the driven leg of motor 100. In the case where motor controller 400 is in the state of FIG. 5, controller 408 instructs, via signal 442, average portion 404 to compute the average of the voltages on first leg 112 and second leg 114. This average is passed to controller 408 as signal 446.
With the average of the voltages of the grounded leg and the driven leg of motor 100 as provided by average portion 404 and an indication for the voltage on the floating leg as provided by sensor 402, controller 408 is able to determine a more accurate position of rotor 102 relative to stator 104. This position information is provided to output portion 410 as signal 450. Output portion 410 may then provide this data in a usable format. In one example output format, a graph is used. This will now be described with reference to FIG. 7.
FIG. 7 presents an illustration of an example graph of waveforms for motor system 500 described above with reference to FIG. 5, when operating in the sensing mode.
A graph 700 includes a y-axis 702, in Volts, and an x-axis 704, in milliseconds. Graph 700 includes a dotted waveform 706, a waveform 708 and a waveform 710.
Waveform 708 represents the voltage on signal line 420, i.e., ground connected to leg 112.
Waveform 710 represents the voltage on signal line 422, i.e., the driving signal provided by driver 412 to second leg 114. Waveform 710 includes a pulse 711 with a rising edge 712 and a falling edge 722, a pulse 714 and a pulse 716.
Dotted waveform 706 represents the voltage on signal line 424, i.e., the BEMF induced on third leg 116. Dotted waveform 706 increases generally linearly as denoted by a linear reference line 707. A dashed line 726 is a predetermined threshold, wherein when dotted waveform 706 crosses dashed line 726, rotor 102 is in a known location relative to stator 104. In this example, if dotted waveform 706 closely followed linear reference line 707, dotted waveform 706 would cross dashed line 726 at a point 730. Accordingly, at the time of point 730 the location of rotor 102 would be known relative to stator 104. With this known location, controller would be able to instruct drivers 411, 412 and 413 precisely when to reverse the polarities on the driving signals for motor 100, for example as discussed above with reference to FIGS. 2B-C.
In conventional methods, dashed line 726 is set as the average of the voltage of the driven leg (in this example second leg 114) and the leg set to ground (in this example, leg 112). Clearly, as the driven leg is driven with a non-direct driving signal (including PWM signals), an average of the voltages of the driven leg and the leg set to ground would additionally be a non-direct driving signal. However, for purposes of discussion, dashed line 726 is shown as a constant voltage.
Due to errors, dotted waveform 706 does not follow linear reference line 707. Dotted waveform 706 instead crosses dashed line 726 at a location denoted by a point 728, before point 730. Accordingly, at the time of point 728 the location of rotor 102 would be incorrectly assessed relative to stator 104. With this incorrect location, controller 408 may incorrectly instruct drivers 411, 412 and 413 when to reverse the polarities on the driving signals for motor 100, for example as discussed above with reference to FIGS. 2E-F.
Some of the errors that prevent dotted waveform 706 from following linear reference line 707 are acute changes in the BEMF as a result of impulses in the driving signal in the driven leg. In particular, very high frequency aspects of the rising and falling edges of waveform 710 (the voltage on signal line 422, i.e., the driving signal provided by driver 412 to second leg 114) create drastic changes in dotted waveform 706 (voltage on signal line 424, i.e., the BEMF induced on third leg 116). For example, the error at a point 720 of dotted waveform 706 results from the occurrence of rising edge 712 of pulse 711, whereas the error at a point 724 of dotted waveform 706 results from the occurrence of falling edge 722 of pulse 711. Furthermore, errors may be exhibited by dotted waveform 706 as a result of the rising and falling edges for pulses 714 and 716.
In other words, as a result of very high frequency aspects of the rising and falling edges of a PWM driving signal provided to drive one leg of a three-phase motor during a sensing process, a controller may incorrectly instruct drivers when to reverse the polarities on the driving signals for the motor during a driving process. The incorrect instructions for driving may lead to an improper driving of the motor, for example as discussed above with reference to FIGS. 2E-F.
Illustrations and descriptions with reference to FIG. 7 are considered for a portion of a cyclical period associated with the operation of motor system 500. For example, for a different portion of the cyclical period associated with motor system 500, dotted waveform 706 may be configured for ground potential, waveform 708 may be configured for a pulse width modulated signal and waveform 710 may be configured for high impedance.
In view of the foregoing, there is a need for improved techniques for driving three-phase motors using pulse width modulation techniques.